package com.aiti.lulian.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.util.Date;

/**
 * 名片名企圈申请表
 * @since 2025-08-21
 */
@Getter
@Setter
@Accessors(chain = true)
@TableName("card_enterprise_circle_application")
public class CardEnterpriseCircleApplication implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value = "base_id", type = IdType.ASSIGN_ID)
    private String baseId;

    /**
     * 圈子ID
     */
    @TableField("circle_id")
    private String circleId;

    /**
     * 申请人姓名
     */
    @TableField("name")
    private String name;

    /**
     * 申请人职位
     */
    @TableField("position_one")
    private String positionOne;

    /**
     * 申请人头像
     */
    @TableField("avatar")
    private String avatar;

    /**
     * 是否显示头像
     */
    @TableField("show_avatar")
    private Integer showAvatar;

    /**
     * 申请人公司名称
     */
    @TableField("enterprise_name")
    private String enterpriseName;

    /**
     * 圈子标签ID
     */
    @TableField("label_id")
    private String labelId;

    /**
     * 申请方式 1邀请 2圈子ID
     */
    @TableField("apply_method")
    private Integer applyMethod;

    /**
     * 邀请人姓名
     */
    @TableField("inviter_name")
    private String inviterName;

    /**
     * 邀请人名片ID
     */
    @TableField("inviter_card_id")
    private String inviterCardId;

    /**
     * 申请状态 0待审批 1已拒绝 2已同意
     */
    @TableField("status")
    private Integer status;

    /**
     * 拒绝类型 0忽略申请，不发送通知 1名片信息填写不规范 2不符合加入条件
     */
    @TableField("reject_type")
    private Integer rejectType;

    /**
     * 申请人名片ID
     */
    @TableField("applicant_card_id")
    private String applicantCardId;

    /**
     * 申请时间
     */
    @TableField("apply_time")
    private Date applyTime;

    /**
     * 审批人名片ID
     */
    @TableField("approver_card_id")
    private String approverCardId;

    /**
     * 审批时间
     */
    @TableField("approve_time")
    private Date approveTime;

    /**
     * 简介
     */

    @TableField("profile")
    private String profile;
}
